package cn.newtest.bi.collection.dao;

import java.util.List;

import net.risesoft.risebi.collection.model.Catalog;

import org.appfuse.dao.Dao;
/**
*
* @author <a href="mailto: wangchui@risesoft.net">王锤</a>
* @version $Revision$
* 
*/
public interface CatalogDao  extends Dao {
	/**
	 * 返回所有catalog，排序
	 * 
	 * @return List
	 * @throws Exception
	 */
	List<Catalog> getAllOrderByTabIndex() throws Exception;
	List<Catalog> getCatalogByType(int type) throws Exception;

	/**
	 * 得到统计对象catalog
	 * 
	 * @return
	 * @throws Exception
	 */
	List getCatalogWithSo() throws Exception;
	
	
	List getCatalogWithSoByApp(String appGuid, boolean includeVirtual) throws Exception;
	
	/**
	 * 根据catalogIdArray数组获得所有统计对象
	 * 
	 * @param catalogIdArray
	 * @return
	 * @throws Exception
	 */
	List getCatalogWithSoByIds(String[] catalogIdArray) throws Exception;
	
	List<Catalog> getCatalogByApp(String appGuid,String[] filter) throws Exception;
}
